Stationarity Check (ADF Test, KPSS Test) গাইড ও নোট

Machine Learning - টাইম সিরিজ (Time Series) - Exploratory Data Analysis (EDA) for Time Series
326

টাইম সিরিজ ডেটার স্টেশনারিটি যাচাই করা গুরুত্বপূর্ণ, কারণ স্টেশনারিটি ডেটার গড়, ভ্যারিয়েন্স এবং কোভেরিয়েন্স সময়ের সাথে অপরিবর্তিত থাকা নিশ্চিত করে, যা পূর্বাভাস তৈরির জন্য একটি প্রয়োজনীয় শর্ত। স্টেশনারিটি চেক করার জন্য দুটি জনপ্রিয় স্ট্যাটিস্টিক্যাল টেস্ট রয়েছে: ADF টেস্ট (Augmented Dickey-Fuller Test) এবং KPSS টেস্ট (Kwiatkowski-Phillips-Schmidt-Shin Test)


১. ADF টেস্ট (Augmented Dickey-Fuller Test)

বর্ণনা: ADF টেস্ট একটি স্ট্যাটিস্টিক্যাল টেস্ট যা টাইম সিরিজে স্টেশনারিটির উপস্থিতি বা অনুপস্থিতি যাচাই করতে ব্যবহৃত হয়। এটি ডিকি-ফুলার টেস্টের সম্প্রসারিত সংস্করণ, যা টাইম সিরিজে ট্রেন্ডের উপস্থিতি চেক করে। এই টেস্টটি মূলত নাল হাইপোথিসিস (Null Hypothesis) হিসেবে স্টেশনারিটি না থাকার ধারণা (i.e., টাইম সিরিজ ইউনিট রুট সহ) পরীক্ষা করে।

  • নাল হাইপোথিসিস (Null Hypothesis): টাইম সিরিজ স্টেশনারি নয় (অথবা ইউনিট রুট রয়েছে)।
  • বিকল্প হাইপোথিসিস (Alternative Hypothesis): টাইম সিরিজ স্টেশনারি (অথবা ইউনিট রুট নেই)।

কিভাবে কাজ করে:

  • ADF টেস্ট ডেটার ট্রেন্ড বা সিজনালিটি থাকার সম্ভাবনা নির্ধারণ করে।
  • p-value কম হলে (সাধারণত 0.05 বা তার কম), আমরা নাল হাইপোথিসিস প্রত্যাখ্যান করি এবং টাইম সিরিজ স্টেশনারি বলে ধরে নিই।

উদাহরণ (Python):

from statsmodels.tsa.stattools import adfuller

# Sample time series data
data = [100, 120, 150, 130, 160, 180, 200]  # Example data

# Perform Augmented Dickey-Fuller test
result = adfuller(data)

# Output ADF Statistic and p-value
print(f'ADF Statistic: {result[0]}')
print(f'p-value: {result[1]}')

২. KPSS টেস্ট (Kwiatkowski-Phillips-Schmidt-Shin Test)

বর্ণনা: KPSS টেস্ট হল আরেকটি জনপ্রিয় টেস্ট, যা টাইম সিরিজের স্টেশনারিটি যাচাই করতে ব্যবহৃত হয়। KPSS টেস্ট ADF টেস্টের বিপরীতভাবে কাজ করে। এই টেস্টের নাল হাইপোথিসিস হল যে টাইম সিরিজ স্টেশনারি (অথবা এটি ট্রেন্ড-স্টেশনারি) এবং বিকল্প হাইপোথিসিস হল টাইম সিরিজে ইউনিট রুট রয়েছে, অর্থাৎ এটি স্টেশনারি নয়।

  • নাল হাইপোথিসিস (Null Hypothesis): টাইম সিরিজ স্টেশনারি।
  • বিকল্প হাইপোথিসিস (Alternative Hypothesis): টাইম সিরিজ স্টেশনারি নয় (অথবা ইউনিট রুট রয়েছে)।

কিভাবে কাজ করে:

  • KPSS টেস্ট p-value নির্ধারণ করে এবং p-value যদি কম হয় (0.05 এর নিচে), তাহলে নাল হাইপোথিসিস প্রত্যাখ্যান করা হয় এবং টাইম সিরিজ স্টেশনারি নয় বলে ধরে নেওয়া হয়।

উদাহরণ (Python):

from statsmodels.tsa.stattools import kpss

# Sample time series data
data = [100, 120, 150, 130, 160, 180, 200]  # Example data

# Perform KPSS test
result = kpss(data, regression='c')

# Output KPSS Statistic and p-value
print(f'KPSS Statistic: {result[0]}')
print(f'p-value: {result[1]}')

ADF টেস্ট এবং KPSS টেস্টের মধ্যে পার্থক্য

  1. নাল হাইপোথিসিস:
    • ADF টেস্টের নাল হাইপোথিসিস হল "টাইম সিরিজ স্টেশনারি নয়"।
    • KPSS টেস্টের নাল হাইপোথিসিস হল "টাইম সিরিজ স্টেশনারি"।
  2. টেস্টের উদ্দেশ্য:
    • ADF টেস্ট ইউনিট রুটের উপস্থিতি চেক করে, অর্থাৎ ডেটার মধ্যে ট্রেন্ড বা সিজনাল প্যাটার্নের উপস্থিতি চিহ্নিত করে।
    • KPSS টেস্ট স্টেশনারিটি (ট্রেন্ড-স্টেশনারিটি) চেক করে।
  3. অপেক্ষিত ফলাফল:
    • ADF টেস্টে p-value কম হলে, স্টেশনারিটি অনুমোদিত হয়।
    • KPSS টেস্টে p-value কম হলে, স্টেশনারিটি প্রত্যাখ্যাত হয়।

সারাংশ

স্টেশনারিটি চেক করার জন্য ADF টেস্ট এবং KPSS টেস্ট দুটি জনপ্রিয় পদ্ধতি। ADF টেস্ট ইউনিট রুট চেক করে এবং KPSS টেস্ট স্টেশনারিটি চেক করে। দুটি টেস্টই স্টেশনারিটির উপস্থিতি বা অনুপস্থিতি যাচাই করার জন্য ব্যবহৃত হয়, তবে তাদের পদ্ধতি এবং হাইপোথিসিস ভিন্ন। এভাবে, টাইম সিরিজ ডেটার মডেলিং এবং পূর্বাভাস তৈরিতে স্টেশনারিটি নিশ্চিত করা অত্যন্ত গুরুত্বপূর্ণ।

Content added By
Promotion

Are you sure to start over?

Loading...